3.7.13 Reihenvektor

Vorbemerkung :

Bei der Darstellung bestimmter physikalischer Versuche und Modelle (z. B. fortschreitende Welle mit Oszillatoren, Potential- und Stromverhalten einer belasteten Widerstandskette, fraunhofersche Beugung am Einzel- und Mehrfachspalt, usw.) wird eine ganze Reihe gleichartiger Animationselemente benötigt. Da die Größen der einzelnen Elementaroszillatoren, -auslenkungen, -wellen, usw. mathematisch geschickt mittels Indizierung beschrieben werden können, ist es naheliegend, dieses Prinzip auf Animationselemente zu übertragen. Die darzustellenden Größen werden im Kernprogramm durch Arrays beschrieben und – durch Auflistung des Array-Bezeichners im Ausgabebefehl – der Animation zugänglich gemacht. Den Komponenten der Reihenvektoren lassen sich dann durch Bestimmung eines Laufindex die zugehörigen Werte zuordnen.

Definitionen Erzeugen eines Reihenvektors

Nachdem im Hauptmenü Animation der Unterpunkt Editieren aktiviert wurde, ist im Menü Animation der Unterpunkt Reihenvektor verfügbar.
Nach Aufruf dieses Menüpunktes ändert sich der Mauszeiger in zwei kleine parallele Pfeile, die einen Reihenvektor symbolisieren. Zieht man nun bei gedrückter linker Maustaste den Reihenvektor größer und lässt anschließend die Maustaste los, wird ein Reihenvektor mit vier Vektoren erzeugt (s. Abb. 3.67). Es erscheint der Dialog Reihenvektor-Eigenschaften (s. Abb. 3.68). Abb.3.68
Abb.3.68 Reihenvektor - Eigenschaften

Die Registerkarten P1 und P2 legen die Fußpunkte des ersten und des letzten Vektors in der Vektorreihe fest. Über sie können ihre Bewegungen genau so festgelegt werden, wie über die Bezugspunkte des Animationselements Rechteck, Linie etc was in Abschnitt 3.6 genau ausgeführt ist.
Mit Hilfe der Registerkarte P3 lassen sich folgende Einstellungen vornehmen.
Abb.3.69
Abb.3.69 Reihenvektor-Eigenschaft "RV"
Auf der Registerkarte RV lassen sich die übergreifenden Eigenschaften des Reihenvektors festlegen, die in Abb. 3.69 zu sehen sind. Reihenvektor im Ausgaben-Fenster bearbeiten
Abb.3.69/1a
Abb.3.69/1a Einstellungen von P3

Beispiel 1 : Variable Funktionsgraphen zum Fitten einer Messkurve



Ziel dieses Beispiel ist es, das Element Reihenvektor zu verwenden, um eine analytische Funktion z einer gemessenen Kurve anzupassen.
Bei der gemessenen Kurve handelt es sich in diesem Beispiel um die mit dem Sonarmeter erfasste y-Bewegung eines Federschwingers. Daher versuchen wir eine Sinusfunktion
z(n)=u sin(v n + w)
der Messkurve anzupassen.
Der Vorteil bei der Verwendung des Animationselements Reihenvektors ist, dass sich der Verlauf von z(n) als Umhüllende der Vektorspitzen sofort den Änderungen von u,v und w anpasst.
Die Werte von u,v und w sind zunächst unbekannt und über Schieber solange zu verändern, bis die Messkurve die Vektoren umhüllt (siehe 1b).


Die Fußpunkte sämtlicher Vektoren sollen natürlich auf der t-Achse liegen, daher werden P1 und P2 des Reihenvektors fixiert gewählt und markieren die Zeitpunkte t=0 bzw. t=5 auf der t-Achse des Graphen. Die y-Verschiebung der Vektorenelemente sollen sich jeweils wie die Funktion z verhalten. In x-Richtung findet keine Verschiebung statt. Wählen Sie daher die Einstellungen für P3 so, wie in Abbildung 1a gezeigt.
Unter RV müssen Sie schließlich noch die Anzahl der Vektoren einstellen. Im Beispiel aus Abbildung 1a wurde Anzahl der Elemente = 100 gewählt.
Die Werte für die Funktion z(n) werden im Kernprogramm definiert.
Zunächst wird eine Feldvariable z mit 100 Feldern durch

dim z[1..100]

definiert. Innerhalb der Repeat-Schleife erfolgt dann die Abfrage der Schieber für u,v und w und das Erstellen der "Wertetabelle" für die Funktion z(n) :

... if ende then // fitten erst nach dem Erstellen der Messkurve begin u:=schieber (u); Werte für u,v und w abfragen v:=schieber (v); w:=schieber(w); for j%:=1 to 100 do z[j]:=u*Sinus (j*v+w); // "Wertetablle" für z(n) erstellen end; Ausgabe (t, y, z, j); ...

fitten.prj zeigt das fertige Projekt,
prinzip1.prj ist ein einfaches Projekt, um noch einmal das Prinzip der Reihenvektorsteuerung zu veranschaulichen.

Abb.3.69/1b
Abb.3.69/1b Fitten einer Messkurve

Abb.3.69/2a
Abb.3.69/2a Eigenschaft RV

Beispiel 2 : Vektorkette zur Darstellung der Bahn einer Probeladung im E-Feld eines Dipols

Im folgenden Beispiel verwenden wir das Animationselement "Reihenvektor" zur Darstellung der Bewegung einer positiven Probeladung in einem elektrischen Dipol. Dabei erfolgt die Bewegung parallel zu den E-Feldlinien des E-Feldes und mit einer Geschwindigkeit, die proportional zur Feldstärke im Punkt der Probeladung ist. Wir wollen den Weg der Probeladung als entsprechende Vektorsumme darstellen.
Die Handhabung des Animationselements zur Darstellung eines Reihenvektors als Vektorsumme wurde oben beschrieben und unterscheidet sich nicht wesentlich vom vorherigen Beispiel. Für uns interessant ist die Möglichkeit, die Zahl der Vektoren eines Reihenvektors während des Ablaufs zu verändern. Auch muss nun die Option "Vektorkette" gewählt werden (siehe Abb.3.69/2a).

dipol.prj zeigt das fertige Projekt. Die Startposition der Probeladung lässt sich über Schieber einstellen.
prinzip2.prj ist ein einfaches Projekt, um noch einmal das Prinzip der Vektorkettensteuerung zu veranschaulichen.

Eine typische Ausgabe ist in Abbildung 3.69/2b zu sehen. Abb.3.69/2b
Abb.3.69/2b Ausgabe des Projekts dipol.prj


weiter mit...

Bearbeiten von Animationselementen